package homework;

import java.util.Scanner;

public class question24 {

	/**
	 * 题目：给一个不多于5位的正整数，
	 * 要求：一、求它是几位数，
	 * 二、逆序打印出各位数字。   
 	 * (使用了长整型最多输入18位)
	 */
	public static void main(String[] args) {
		System.out.println("请输入一个最大为5位数的正整数:");
		System.out.println("(若位数显示为-1,说明输入有误)");
		Scanner sr = new Scanner(System.in);//调用控制台输入查询数
		long num = sr.nextLong();//将输入数赋值给num
		//long n = f();
		//判定位数
		int n = -1;
		long a,b,c,d,e;
		if(num>=10000&&num<=99999){
			n =5;
			a=num/10000;//万位数
			b=(num-a*10000)/1000;//千位数
			c=(num-a*10000-b*1000)/100;//百位数
			d=(num-a*10000-b*1000-c*100)/10;//十位数
			e=(num-a*10000-b*1000-c*100-d*10);//个位数
			System.out.println("该正整数的逆序是"+e+d+c+b+a);
		}else if(num>=1000&&num<=9999){
			n=4;
			b=num/1000;//千位数
			c=(num-b*1000)/100;//百位数
			d=(num-b*1000-c*100)/10;//十位数
			e=(num-b*1000-c*100-d*10);//个位数
			System.out.println("该正整数的逆序是"+e+d+c+b);
		}else if(num>=100&&num<=999){
			n=3;
			c=num/100;//百位数
			d=(num-c*100)/10;//十位数
			e=(num-c*100-d*10);//个位数
			System.out.println("该正整数的逆序是"+e+d+c);
		}else if(num>=10&&num<=99){
			n=2;
			d=num/10;//十位数
			e=(num-d*10);//个位数
			System.out.println("该正整数的逆序是"+e+d);
		}else if(num>=1&&num<=9){
			n=1;
			e=num;//个位数
			System.out.println("该正整数的逆序是"+e);
		}
		System.out.println("该正整数的逆序是"+n);
					
		}
	}

	/*private static long f() {
		double d= num/10000;
		//函数的调用 为什么无法使用num?
		return 0;
	}*/

	

